Adaptive Online Program Analysis: Concepts, Infrastructure, and Applications
نویسندگان
چکیده
Dynamic analysis of state-based properties is being applied to problems such as validation, intrusion detection, and program steering and reconfiguration. Dynamic analysis of such properties, however, is used rarely in practice due to its associated run-time overhead that causes multiple orders of magnitude slowdown of program execution. In this paper, we present an approach for exploiting the state-fullness of specifications to reduce the cost of dynamic program analysis. With our approach, the results of the analysis are guaranteed to be identical to those of the traditional, expensive dynamic analyses, yet with overheads between 23% and 33% relative to the un-instrumented application, for a range of non-trivial analyses. We describe the principles behind our adaptive online program analysis technique, extensions to our Java run-time analysis framework that support such analyses, and report on the performance and capabilities of two different families of adaptive online program analyses. Dynamic analysis of state-based properties is being applied to problems such as validation, intrusion detection, and program steering and reconfiguration. Dynamic analysis of such properties, however, is used rarely in practice due to its associated run-time overhead that causes multiple orders of magnitude slowdown of program execution. In this paper, we present an approach for exploiting the state-fullness of specifications to reduce the cost of dynamic program analysis. With our approach, the results of the analysis are guaranteed to be identical to those of the traditional, expensive dynamic analyses, yet with overheads between 23% and 33% relative to the un-instrumented application, for a range of non-trivial analyses. We describe the principles behind our adaptive online program analysis technique, extensions to our Java run-time analysis framework that support such analyses, and report on the performance and capabilities of two different families of adaptive online program analyses.
منابع مشابه
Runtime Evolution of Highly Dynamic Software
Highly dynamic software systems are applications whose operations are particularly affected by changing requirements and uncertainty in their execution environments. Ideally such systems must evolve while they execute. To achieve this, highly dynamic software systems must be instrumented with self-adaptation mechanisms to monitor selected requirements and environment conditions to assess the ne...
متن کاملIdentifying Customer Journey Opportunities in 5A Model in Tourism Industry
Purpose: Growing development of technologies helped stronger customers with better relationship with companies. Consequently, marketers should pursue new ways of attracting customers and pathway. Modern customer buying path in the age of communication has been redesigned as 5A model (Aware, Appeal, Ask, Act, Advocate). The purpose is to identify customer opportunities of 5A model in tourism ind...
متن کاملAdaptive fuzzy sliding mode and indirect radial-basis-function neural network controller for trajectory tracking control of a car-like robot
The ever-growing use of various vehicles for transportation, on the one hand, and the statistics ofsoaring road accidents resulting from human error, on the other hand, reminds us of the necessity toconduct more extensive research on the design, manufacturing and control of driver-less intelligentvehicles. For the automatic control of an autonomous vehicle, we need its dynamic...
متن کاملA review of agent-based modeling (ABM) concepts and some of its main applications in management science
We live in a very complex world where we face complex phenomena such as social norms and new technologies. To deal with such phenomena, social scientists often use reductionism approach where they reduce them to some lower-lever variables and model the relationships among them through a scheme of equations. This approach that is called equation based modeling (EBM) has some basic weaknesses in ...
متن کاملAn Adaptive Scheduling Approach in Real-Time CORBA
CORBA is an emerging middleware infrastructure with open standardization that is receiving a good acceptance since it makes easier to program distributed objects. CORBA is being extended through the specification of interfaces and necessary abstractions to support applications with real-time constraints. These new abstractions will enable a variety of programming modelsions will enable a variet...
متن کامل